import {
  IsString,
  IsInt,
  IsOptional,
  MaxLength,
  MinLength,
} from 'class-validator';

/**
 * 创建评论 DTO
 */
export class CreateCommentDto {
  /**
   * 作品ID
   */
  @IsInt()
  workId: number;

  /**
   * 评论内容（1-500字符）
   */
  @IsString()
  @MinLength(1, { message: '评论内容不能为空' })
  @MaxLength(500, { message: '评论内容不能超过500字符' })
  content: string;

  /**
   * 父评论ID（回复评论时必填）
   */
  @IsInt()
  @IsOptional()
  parentId?: number;

  /**
   * 回复的用户ID（@某人时填写）
   */
  @IsInt()
  @IsOptional()
  replyToUserId?: number;
}
